home *** CD-ROM | disk | FTP | other *** search
/ Apple WWDC 1996 / WWDC96_1996 (CD).toast / Technology Materials / MacOS 8 Resources / Developer Tools / Mac OS 8 Interfaces & Libraries / Interfaces / AIncludes / PCICommonPlugin.a < prev    next >
Text File  |  1996-05-01  |  3KB  |  92 lines

  1. ;
  2. ;    File:        PCICommonPlugin.a
  3. ;
  4. ;    Contains:    This file contains all interface related structures and prototypes common for pci expert to
  5. ;
  6. ;    Version:    Technology:    Copland
  7. ;                Release:    Universal Interfaces 3.0d3 on Copland DR1
  8. ;
  9. ;    Copyright:    © 1984-1996 by Apple Computer, Inc.  All rights reserved.
  10. ;
  11. ;    Bugs?:        If you find a problem with this file, send the file and version
  12. ;                information (from above) and the problem description to:
  13. ;
  14. ;                    Internet:    apple.bugs@applelink.apple.com
  15. ;                    AppleLink:    APPLE.BUGS
  16. ;
  17. ;
  18.     IF &TYPE('__PCICOMMONPLUGIN__') = 'UNDEFINED' THEN
  19. __PCICOMMONPLUGIN__ SET 1
  20.  
  21.     IF &TYPE('__TYPES__') = 'UNDEFINED' THEN
  22.     include 'Types.a'
  23.     ENDIF
  24.     IF &TYPE('__NAMEREGISTRY__') = 'UNDEFINED' THEN
  25.     include 'NameRegistry.a'
  26.     ENDIF
  27.     IF &TYPE('__ERRORS__') = 'UNDEFINED' THEN
  28.     include 'Errors.a'
  29.     ENDIF
  30.     IF &TYPE('__DRIVERFAMILYMATCHING__') = 'UNDEFINED' THEN
  31.     include 'DriverFamilyMatching.a'
  32.     ENDIF
  33.     IF &TYPE('__INTERRUPTS__') = 'UNDEFINED' THEN
  34.     include 'Interrupts.a'
  35.     ENDIF
  36.     IF FOR_SYSTEM8_PREEMPTIVE THEN
  37. ;  typedefs for common plugins interface
  38. PCIPluginHeader            RECORD 0
  39. version                     ds.l    1                ; offset: $0 (0)
  40. reserved1                 ds.l    1                ; offset: $4 (4)
  41. reserved2                 ds.l    1                ; offset: $8 (8)
  42. reserved3                 ds.l    1                ; offset: $C (12)
  43. thisPluginLoadID         ds.l    1                ; offset: $10 (16)
  44. sizeof                     EQU *                    ; size:   $14 (20)
  45.                         ENDR
  46. ; typedef struct PCIPluginHeader *        PCIPluginHeaderPtr
  47.  
  48. ;  pci bridge descriptor definition
  49. PCIBridgeDescriptor        RECORD 0
  50. InterfaceHeader             ds        PCIPluginHeader ; offset: $0 (0)
  51. TheDomainDriverDescription  ds.l 1                ; offset: $14 (20)
  52. DefaultBridgeEnablerFunc  ds.l    1                ; offset: $18 (24)
  53. DefaultBridgeDisablerFunc  ds.l    1                ; offset: $1C (28)
  54. DefaultBridgeDispatcherFunc  ds.l 1                ; offset: $20 (32)
  55. FinalizeFunc             ds.l    1                ; offset: $24 (36)
  56. sizeof                     EQU *                    ; size:   $28 (40)
  57.                         ENDR
  58. ; typedef struct PCIBridgeDescriptor *    PCIBridgeDescriptorPtr
  59.  
  60. ;
  61. ; pci bridge variables for bridges
  62. ;    stolen from marconi InterruptsAssign.c written by Matt Nelson
  63. ;
  64. DefaultBridgeVariables    RECORD 0
  65. lastEntryIntCount         ds.l    1                ; offset: $0 (0)
  66. lastServicedMember         ds.l    1                ; offset: $4 (4)
  67. totalMembersScanned         ds.l    1                ; offset: $8 (8)
  68. totalMemberCount         ds.l    1                ; offset: $C (12)
  69. memberEnableFlags         ds.l    1                ; offset: $10 (16)
  70. sizeof                     EQU *                    ; size:   $14 (20)
  71.                         ENDR
  72. ; typedef struct DefaultBridgeVariables * DefaultBridgeVariablesPtr
  73.  
  74. ;  pci header interface version definition
  75.  
  76. kPCIPluginVersion1000            EQU        $01000000            ; initial pci family interface release
  77. ;  pci error codes
  78.  
  79. kPCIerrorNoError                EQU        0
  80. kPCIerrorNoDeviceFound            EQU        -2538
  81. kPCIerrorNoDomainFound            EQU        -192
  82. kPCIerrorBadPointerFound        EQU        -346
  83. kPCIerrorBadValueFound            EQU        -2422
  84. kPCIerrorBadRegPropertyFound    EQU        -2539
  85. kPCIerrorNoNotificationProduced    EQU        -192
  86. kPCIerrorMemoryAllocationFailed    EQU        -2537
  87. kPCIerrorUnsupportedPluginVersion EQU    -2405
  88. kPCIerrorFatal                    EQU        -2499
  89.     ENDIF
  90.     ENDIF ; __PCICOMMONPLUGIN__ 
  91.  
  92.